#pragma once

#include "fxcc/core/graph/directX11/pch.h"

namespace fxcc
{
	namespace graph
	{
		namespace directX11
		{
			struct FXCC_API MeshJack :public fxcc::graph::common::MeshJack
			{
				ComPtr<ID3D11Buffer> m_IndexBuffer;

				std::vector<ComPtr<ID3D11Buffer>> m_FixedVertexBuffers;

				std::vector<ComPtr<ID3D11Buffer>> m_SkinnedVertexBuffers;

				MeshJack(const fxcc::graph::common::MeshJack::Desc& desc);

				bool SetVertexBuffer(ID3D11Buffer** buffer, const void* data, unsigned long dataSize);

				bool Init();

				void Bind() const;

				void DrawElementsAuto() const;


			};
		};
	};
};